package cn.tedu._06interceptor.config;

import cn.tedu._06interceptor.interceptor.MyInterceptor1;
import cn.tedu._06interceptor.interceptor.MyInterceptor2;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class MvcConfig implements WebMvcConfigurer {
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //1.策略1：拦截所有请求；
//        registry.addInterceptor(new MyInterceptor1());
        //2.策略2：拦截指定的请求【只拦截登录请求】
//        registry.addInterceptor(new MyInterceptor1()).addPathPatterns("/login");
        //3.策略3：拦截指定模块的请求【只拦截用户模块的请求】
        //   **匹配任意字符
//        registry.addInterceptor(new MyInterceptor1()).addPathPatterns("/**");
        //4.策略4：排除指定的请求【拦截用户模块除了登录模块之外的所有请求】
//        registry.addInterceptor(new MyInterceptor1())
//                .addPathPatterns("/**")
//                .excludePathPatterns("/login");

        //注册两个拦截器，策略都为拦截所有请求
        registry.addInterceptor(new MyInterceptor1());
        registry.addInterceptor(new MyInterceptor2());
    }
}
